﻿using System;

namespace 开放封闭原则
{
    class Program
    {
        static void Main(string[] args)
        {


           /*
            * 
            * 开放封闭原则：
            * 开放：对扩展开放
            * 封闭：对修改封闭
            *
            * 怎样的设计才能面对需求的改变依旧可以保持相对稳定，从而使系统可以在第一个版本以后不断推出新版本呢？
            * 开放封闭原则可以给我们答案.
            *
            * 开放封闭原则时面向对象设计的核心所在，遵循这个原则可一体现到面向对象所声称的巨大好处。也就是可维护，可扩展，可复用，灵活性好
            * 我们应该只对程序中频繁变化的模块进行抽象隔离。因为对 程序进行可以的抽象并不是一个好主意，拒绝不成熟的抽象和抽象同样重要。
            *
            * 这天大 boss 看到 日本富士山要爆发的消息，决定要将产线 巴拉 改造成 烟花，但由于巴拉产线只能生产橡胶类的产品
            * 这件事可难倒小B 了， 原本的产线不符合生产烟花的标准那么要怎么办呢？小B摸索了很久很久，依旧没有啥好的方法，
            * 于是跟大boss 说产线不具备生产烟花的条件，
            * 但大boss 执意要做，没办法，小B 只能妥协想了个折中的方法，在原本巴拉产线的基础再建一条生产烟花的产线（花花），
            * 于是， 一条既能生产 轮胎，胶鞋，胶皮，烟花的产线就诞生了。
            * 小B 对这种新奇的方式很是喜欢，于是大笔一挥，于是 纸上就落下了 开放封闭原则 六个大字..
            * 欲知后事如何，且听下回分解。
            *
            */
        }
    }
}
